﻿using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Framework.Entidade.Acesso;

namespace Framework.AcessoDados.Acesso
{
    public class AD_PessoaFisica
    {
        #region Construtor

        public EN_PessoaFisica Construtor(SqlDataReader dr)
        {
            if (dr == null) { throw new ArgumentNullException("reader"); }

            int id = dr.GetOrdinal("id");
            int nome = dr.GetOrdinal("nome");
            int sobrenome = dr.GetOrdinal("sobrenome");
            int cpf = dr.GetOrdinal("cpf");
            int rg = dr.GetOrdinal("rg");
            int email = dr.GetOrdinal("email");
            int facebook = dr.GetOrdinal("facebook");
            int twitter = dr.GetOrdinal("twitter");
            int site = dr.GetOrdinal("site");
            int telefone = dr.GetOrdinal("telefone");
            int celular = dr.GetOrdinal("celular");
            int endereco = dr.GetOrdinal("endereco");
            int numero = dr.GetOrdinal("numero");
            int cidade = dr.GetOrdinal("cidade");
            int estado = dr.GetOrdinal("estado");
            int cep = dr.GetOrdinal("cep");
            int complemento = dr.GetOrdinal("complemento");
            int status = dr.GetOrdinal("status");

            EN_PessoaFisica objPessoaFisica = new EN_PessoaFisica();

            //Recuperando campos do retorno do objeto
            if (!dr.IsDBNull(id))
            {
                objPessoaFisica.Id = dr.GetInt32(id);
            }
            if (!dr.IsDBNull(nome))
            {
                objPessoaFisica.Nome = dr.GetString(nome);
            }
            if (!dr.IsDBNull(sobrenome))
            {
                objPessoaFisica.Sobrenome = dr.GetString(sobrenome);
            }
            if (!dr.IsDBNull(cpf))
            {
                objPessoaFisica.CPF = dr.GetString(cpf);
            }
            if (!dr.IsDBNull(rg))
            {
                objPessoaFisica.RG = dr.GetString(rg);
            }
            if (!dr.IsDBNull(email))
            {
                objPessoaFisica.Email = dr.GetString(email);
            }
            if (!dr.IsDBNull(facebook))
            {
                objPessoaFisica.Facebook = dr.GetString(facebook);
            }
            if (!dr.IsDBNull(twitter))
            {
                objPessoaFisica.Twitter = dr.GetString(twitter);
            }
            if (!dr.IsDBNull(site))
            {
                objPessoaFisica.Site = dr.GetString(site);
            }
            if (!dr.IsDBNull(telefone))
            {
                objPessoaFisica.Telefone = dr.GetString(telefone);
            }
            if (!dr.IsDBNull(celular))
            {
                objPessoaFisica.Celular = dr.GetString(celular);
            }
            if (!dr.IsDBNull(endereco))
            {
                objPessoaFisica.Endereco = dr.GetString(endereco);
            }
            if (!dr.IsDBNull(numero))
            {
                objPessoaFisica.Numero = dr.GetString(numero);
            }
            if (!dr.IsDBNull(cidade))
            {
                objPessoaFisica.Cidade = dr.GetString(cidade);
            }
            if (!dr.IsDBNull(estado))
            {
                objPessoaFisica.Estado = dr.GetString(estado);
            }
            if (!dr.IsDBNull(cep))
            {
                objPessoaFisica.CEP = dr.GetString(cep);
            }
            if (!dr.IsDBNull(complemento))
            {
                objPessoaFisica.Complemento = dr.GetString(complemento);
            }
            if (!dr.IsDBNull(status))
            {
                objPessoaFisica.Status = dr.GetBoolean(status);
            }

            return objPessoaFisica;
        }

        #endregion

        #region Métodos

        #endregion
    }
}
